using System;
using System.Collections.Generic;
using System.Text;
using DataGearLib;
using System.Collections.ObjectModel;
using DataGearLib.Framework;

namespace SampleGeneratedProject
{
    public class CustomerEntity : EntityBase
    {
        private int _id;
        private string _firstName;
        private string _lastName;

        // 
        // TODO: Properties
        //

        //
        // TODO: Related Entity
        // List<ReleatedEntity> ProductCollection;
        //

        public CustomerEntity()
        {

        }

        public CustomerEntity(int ID)
        {

        }
    }

    public class CustomerAdapter
    {
        private CustomerFields _fields;
        
        public static List<CustomerEntity> GetCollection()     
        {
            
        }

        public static List<CustomerEntity> GetCollection(ConditionExpression condition)
        {

        }

        public static List<CustomerEntity> GetCollection(ConditionExpression condition, SortExpression sort)
        {

        }
        
    }

    public class CustomerFields:ITableFields
    {
        private int ID;
        private string FirstName;
        private string LastName;

        public void SetTableName(string tableName)
        {

        }

        public ReadOnlyCollection<string> GetFieldsNames()
        {
            List<string> list = new List<string>();
            
            // ---------------
            // TODO: Generated
            // ---------------
            // list.Add("[#FIELD_NAME#]");

            return list.AsReadOnly();
        }
    }

}
